package com.hsnn.medstgmini.pro.project.model;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.springframework.format.annotation.DateTimeFormat;

import com.hsnn.medstgmini.util.DateUtil;

/**
 * @category 项目表
 * @author 韩守松
 * @date 2015年7月6日
 */
@Entity
@Table(name = "bid_project")
public class BidProject implements java.io.Serializable {

	// Fields

	/**
	 * 
	 */
	private static final long serialVersionUID = -5504035483861952821L;
	private String projId; //项目id
	private String projCode;//项目编码
	private String name;//项目名称
	private String projIntro;//项目简介
	private Date starttime;//采购开始时间
	private Date endtime;//采购结束时间
	private String projCat;//项目类型
	private String projRange;//项目范围
	private String remark;//备注
	private Integer status;//状态1开启0关闭
	private Date createDatetime;//创建时间
	private String createUser;//创建人
	private Date updDatetime;//更新时间
	private String updUser;//更新人

	private Date projStartTime;//招标项目开始时间
	private Date projEndTime;//招标项目结束时间
	
	
	//plan_start_datetime
	private Date planStartDatetime;//采购计划申报开始日期
	private Date planEndDatetime;
	// Constructors

	/** default constructor */
	public BidProject() {
	}

	/** full constructor */
	public BidProject(String projCode, String name, String projIntro,
			Date starttime, Date endtime, String projCat, String remark,
			Integer status, Date createDatetime, String createUser,
			Date updDatetime, String updUser) {
		this.projCode = projCode;
		this.name = name;
		this.projIntro = projIntro;
		this.starttime = starttime;
		this.endtime = endtime;
		this.projCat = projCat;
		this.remark = remark;
		this.status = status;
		this.createDatetime = createDatetime;
		this.createUser = createUser;
		this.updDatetime = updDatetime;
		this.updUser = updUser;
	}

	// Property accessors
	@Id
	@Column(name = "proj_id", unique = true, nullable = false, length = 36)
	public String getProjId() {
		return this.projId;
	}

	public void setProjId(String projId) {
		this.projId = projId;
	}

	@Column(name = "proj_code", length = 100)
	public String getProjCode() {
		return this.projCode;
	}

	public void setProjCode(String projCode) {
		this.projCode = projCode;
	}

	@Column(name = "name", length = 256)
	public String getName() {
		return this.name;
	}

	public void setName(String name) {
		this.name = name;
	}

	@Column(name = "proj_intro", length = 4000)
	public String getProjIntro() {
		return this.projIntro;
	}

	public void setProjIntro(String projIntro) {
		this.projIntro = projIntro;
	}

	@DateTimeFormat(pattern="yyyy-MM-dd")
	@Column(name = "starttime", length = 19)
	public Date getStarttime() {
		return this.starttime;
	}

	public void setStarttime(Date starttime) {
		this.starttime = starttime;
	}
	@DateTimeFormat(pattern="yyyy-MM-dd")
	@Column(name = "endtime", length = 19)
	public Date getEndtime() {
		return this.endtime;
	}

	public void setEndtime(Date endtime) {
		this.endtime = endtime;
	}

	@Column(name = "proj_cat", length = 36)
	public String getProjCat() {
		return this.projCat;
	}

	public void setProjCat(String projCat) {
		this.projCat = projCat;
	}

	@Column(name = "remark", length = 4000)
	public String getRemark() {
		return this.remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@Column(name = "status")
	public Integer getStatus() {
		return this.status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@Column(name = "create_datetime", length = 19)
	public Date getCreateDatetime() {
		return this.createDatetime;
	}

	public void setCreateDatetime(Date createDatetime) {
		this.createDatetime = createDatetime;
	}

	@Column(name = "create_user", length = 36)
	public String getCreateUser() {
		return this.createUser;
	}

	public void setCreateUser(String createUser) {
		this.createUser = createUser;
	}

	@Column(name = "upd_datetime", length = 19)
	public Date getUpdDatetime() {
		return this.updDatetime;
	}

	public void setUpdDatetime(Date updDatetime) {
		this.updDatetime = updDatetime;
	}

	@Column(name = "upd_user", length = 36)
	public String getUpdUser() {
		return this.updUser;
	}

	public void setUpdUser(String updUser) {
		this.updUser = updUser;
	}

	@Transient
	public Date getProjStartTime() {
		return projStartTime;
	}

	public void setProjStartTime(Date projStartTime) {
		this.projStartTime = projStartTime;
	}

	@Transient
	public Date getProjEndTime() {
		return projEndTime;
	}

	public void setProjEndTime(Date projEndTime) {
		this.projEndTime = projEndTime;
	}
	
	@Column(name = "proj_range", length = 3)
	public String getProjRange() {
		return projRange;
	}

	public void setProjRange(String projRange) {
		this.projRange = projRange;
	}
	@DateTimeFormat(pattern="yyyy-MM-dd")
	@Column(name = "plan_start_datetime", length = 19)
	public Date getPlanStartDatetime() {
		return planStartDatetime;
	}

	public void setPlanStartDatetime(Date planStartDatetime) {
		this.planStartDatetime = planStartDatetime;
	}
	@DateTimeFormat(pattern="yyyy-MM-dd")
	@Column(name = "plan_end_datetime", length = 19)
	public Date getPlanEndDatetime() {
		return planEndDatetime;
	}

	public void setPlanEndDatetime(Date planEndDatetime) {
		this.planEndDatetime = planEndDatetime;
	}

	
}